package com.rr.program._timeStamp;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimeZone;

/**
 * @author : RENBIAO
 * @createTime : 2021/6/25 15:43
 */
public class TimeStampZone {

    /**
     * 获取更改时区后的时间
     * @param date 日期
     * @param newZone 新时区对象
     * @return 日期
     */
    public static String changeTimeZone(Date date,TimeZone newZone) {

        TimeZone.setDefault(newZone);
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        return df.format(date);

    }

    /**
     * 获取更改时区后的时间戳
     * @param date 日期
     * @param newZone 新时区对象
     * @return 日期
     */
    public static Long changeTimeStampZone(Date date,TimeZone newZone) {
        TimeZone oldZone = TimeZone.getDefault();
        Date dateTmp = null;
        if (date != null) {
            int timeOffset = oldZone.getRawOffset() - newZone.getRawOffset();
            dateTmp = new Date(date.getTime() - timeOffset);
        }
        return dateTmp.getTime();
    }

}
